package com.googlecode.monitoring.dao;

import com.googlecode.monitoring.exception.DataDaoException;
import com.googlecode.monitoring.model.ItemToCheck;

import java.io.FileNotFoundException;
import java.util.List;


public interface AgentStatusDao {
	/**
	 * save status of check job
	 *
	 * @param item object of job
	 * @return boolean false if something wrong
	 */
	boolean saveItemToCheckReport(ItemToCheck item);

	/**
	 * read status of check data
	 *
	 * @return list of DbItemToCheck object instance
	 * @throws DataDaoException exception
	 * @throws FileNotFoundException
	 */
	List<ItemToCheck> getAllItemsFromCheckReport() throws DataDaoException, FileNotFoundException;

	/**
	 * lookup for item similar to given one
	 *
	 * @param itemToCheck
     * @return list of DbItemToCheck object instance
	 * @throws DataDaoException
	 */
	ItemToCheck getItemFromCheckReport(ItemToCheck itemToCheck) throws DataDaoException;
}
